package cn.stylefeng.guns.modular.business.enums;

import cn.stylefeng.roses.kernel.rule.constants.RuleConstants;
import cn.stylefeng.roses.kernel.rule.exception.AbstractExceptionEnum;
import lombok.Getter;

/**
 * 异常相关枚举
 *
 * @author zhangyaowen
 * @date 2021/08/19 16:49
 */
@Getter
//@ExpEnumType(module = SysExpEnumConstant.GUNS_SYS_MODULE_EXP_CODE, kind = SysExpEnumConstant.SYS_FILE_INFO_EXCEPTION_ENUM)
public enum SubFileInfoExceptionEnum implements AbstractExceptionEnum {

    /**
     * 查询结果不存在
     */
    SUBFILEINFO_NOT_EXISTED(RuleConstants.USER_OPERATION_ERROR_TYPE_CODE +  "10001", "查询结果不存在"),

    /**
     * 该条记录不存在
     */
    NOT_EXISTED(RuleConstants.USER_OPERATION_ERROR_TYPE_CODE +"1", "您查询的该条记录不存在"),

    /**
     * 获取文件流错误
     */
    FILE_STREAM_ERROR(RuleConstants.USER_OPERATION_ERROR_TYPE_CODE +"2", "获取文件流错误"),

    /**
     * 文件不存在
     */
    NOT_EXISTED_FILE(RuleConstants.USER_OPERATION_ERROR_TYPE_CODE +"3", "文件不存在"),

    /**
     * 获取上传文件异常
     */
    ERROR_FILE(RuleConstants.USER_OPERATION_ERROR_TYPE_CODE +"4", "获取上传文件异常"),

    /**
     * 下载文件错误
     */
    DOWNLOAD_FILE_ERROR(RuleConstants.USER_OPERATION_ERROR_TYPE_CODE +"5", "下载文件错误"),

    /**
     * 预览文件异常
     */
    PREVIEW_ERROR_NOT_SUPPORT(RuleConstants.USER_OPERATION_ERROR_TYPE_CODE +"6", "预览文件异常，您预览的文件类型不支持或文件出现错误");
    /**
     * 错误编码
     */
    private final String errorCode;

    /**
     * 提示用户信息
     */
    private final String userTip;

    SubFileInfoExceptionEnum(String errorCode, String userTip) {
        this.errorCode = errorCode;
        this.userTip = userTip;
    }



}